package com.xiaoshuidi.cloud.module.rooms.controller.admin.reservation.vo;

import com.alibaba.fastjson.JSONObject;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author sampson
 * create 2023/12/6
 * email  sampson.wang@ixiaoshuidi.com
 */
@Data
@Schema(description = "获取预定配置响应对象")
public class ReservationConfigGetResp {
    /**
     * 主键id
     */
    private Long id;

    /**
     * 公寓ID
     */
    private Long apartmentId;

    /**
     * 预定定金
     */
    private BigDecimal deposit;

    /**
     * 定金类型, 1固定定金 2按租金比例
     */
    private Integer depositType;

    /**
     * 定金保留天数
     */
    private Integer retentionDays;

    /**
     * 未支付失效时间(单位：分钟)
     */
    private Integer unpaidLostTime;

    /**
     * 租金比例
     */
    private Integer rentPercent;

    /**
     * 违约不退（0否 1是）
     */
    private Boolean noRefund;

    /**
     * 违约不退定金违约金比例
     */
    private Integer noRefundPercent;

    /**
     * 协商退订(0否 1是)
     */
    private Boolean consultRefund;

    /**
     * 协商退订退订金额比例
     */
    private Integer consultRefundPercent;

    /**
     * 预订单设置（允许签约带入时可修改，多个逗号隔开）
     */
    private String allowEditConfig;

    /**
     * 退定原因
     */
    private List<JSONObject> withdrawReasonList;

}
